package com.mano233.server.service;

import com.mano233.server.po.File;
import com.mano233.server.po.Form;
import com.mano233.server.po.FormUserEditor;
import com.mano233.server.po.User;
import com.mano233.server.vo.FormVo;
import net.sf.jsqlparser.statement.execute.Execute;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface FormService {
    int createForm(int eventId, int userId);

    List<FormUserEditor> getFormList(int eventId, int pageNum, int pageSize);

    List<Form> getAuditForm(int eventId);

    List<Form> getAccessForm(int eventId);

    int hasForm(int eventId, int userId);

    void accessForm(int formId, int adminId);

    void deleteFormById(int uid, int formId);

    FormUserEditor updateForm(FormUserEditor updateForm, List<User> insertUserList, List<User> deleteUserList);

    FormUserEditor getFormById(int formId);

    String uploadFile(MultipartFile file, int userId, int formId) throws Exception;

    List<File> getFileList(int formId);

    void deleteFile(int formId, int fileId, String fileURL) throws Exception;
}
